﻿using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using Bussines;
using System.Data.SqlClient;

namespace ownx
{
    public partial class wfBiztVagyon : System.Web.UI.Page
    {
        clBIZTOSITASOK _clBIZTOSITASOK;
        DataSet dsBIZTOSITASOK;
        clINTEZMENYEK_LIST _clIntezmenyek;

        int _PRT_ID = -1;

        protected void Page_Load(object sender, EventArgs e)
        {
            TBLObj blObj = null;
            if (Session["BL"] != null)
            {
                blObj = (TBLObj)Session["BL"];
            }
            //   TBLObj blObj = new TBLObj("Test", Session["CONSTR"].ToString(), (clFIELDINFO_LIST)Session["FIELDINFO"]);
            _PRT_ID = Convert.ToInt32(Session["PRT_ID"].ToString());
            _clBIZTOSITASOK = new clBIZTOSITASOK(blObj, _PRT_ID);
            _clIntezmenyek = new clINTEZMENYEK_LIST(blObj,2);

            dsBIZTOSITASOK = _clBIZTOSITASOK.GetBIZTOSITASOK("VAGYON");

            //ha ez az első meghívás
            if (!(Page.IsPostBack))
            {
                ListItem liVAGYC = new ListItem("Cég", "VAGYC");
                ListItem liVAGYS = new ListItem("Személy", "VAGYS");
                ddlBZT_TIPUS.Items.Add(liVAGYS);
                ddlBZT_TIPUS.Items.Add(liVAGYC);
                FillCombos();
                DataInit();
            }
        }

        private void DataInit()
        {
            //feltöltöm a detasetet, majd a gridet
            dsBIZTOSITASOK = _clBIZTOSITASOK.GetBIZTOSITASOK("VAGYON");

            gvBIZTOSITASOK.DataSource = dsBIZTOSITASOK;
            gvBIZTOSITASOK.DataBind();


            if (dsBIZTOSITASOK.Tables["BIZTOSITASOK"].Rows.Count > 0)
            {
                //kijelölöm az elsőt, és kitöltöm az editeket
                gvBIZTOSITASOK.SelectedIndex = 0;
                gvBIZTOSITASOK_SelectedIndexChanged(gvBIZTOSITASOK, null);
            }
        }
        private void FillCombos()
        {
            
            ListItem liIGEN = new ListItem("Igen", "I");
            ListItem liNEM = new ListItem("Nem", "N");

            ddlBZT_VAGYC_INT_ID.Items.Clear();
            ddlBZT_VAGYC_FELELOSSEG.Items.Clear();
            ddlBZT_VAGYC_DOLGOZO.Items.Clear();
            ddlBZT_VAGYC_FLOTTA.Items.Clear();


            if (ddlBZT_TIPUS.SelectedValue == "VAGYS")
            {
                ddlBZT_VAGYC_INT_ID.Items.Add(liIGEN);
                ddlBZT_VAGYC_INT_ID.Items.Add(liNEM);

                foreach (clINTEZMENYEK akti in _clIntezmenyek.lINTEZMENYEK)
                {
                    ListItem lii = new ListItem(akti.fINT_MEGNEVEZES, akti.fINT_ID.ToString());
                    ddlBZT_VAGYC_FELELOSSEG.Items.Add(lii);
                }

                ddlBZT_VAGYC_DOLGOZO.Items.Add(liIGEN);
                ddlBZT_VAGYC_DOLGOZO.Items.Add(liNEM);

                foreach (clINTEZMENYEK akti in _clIntezmenyek.lINTEZMENYEK)
                {
                    ListItem lii = new ListItem(akti.fINT_MEGNEVEZES, akti.fINT_ID.ToString());
                    ddlBZT_VAGYC_FLOTTA.Items.Add(lii);
                }

            }

            if (ddlBZT_TIPUS.SelectedValue == "VAGYC")
            {
                foreach (clINTEZMENYEK akti in _clIntezmenyek.lINTEZMENYEK)
                {
                    ListItem lii = new ListItem(akti.fINT_MEGNEVEZES, akti.fINT_ID.ToString());
                    ddlBZT_VAGYC_INT_ID.Items.Add(lii);
                }

                ddlBZT_VAGYC_FELELOSSEG.Items.Add(liIGEN);
                ddlBZT_VAGYC_FELELOSSEG.Items.Add(liNEM);

                ddlBZT_VAGYC_DOLGOZO.Items.Add(liIGEN);
                ddlBZT_VAGYC_DOLGOZO.Items.Add(liNEM);

                ddlBZT_VAGYC_FLOTTA.Items.Add(liIGEN);
                ddlBZT_VAGYC_FLOTTA.Items.Add(liNEM);
            }

            

        }

        protected void bVissza_Click(object sender, EventArgs e)
        {
            if (bSave_Click2(sender,e))
            Response.Redirect("wfPartnerChoice.aspx");
        }

        protected void bAlapadatok_Click(object sender, EventArgs e)
        {
            if (bSave_Click2(sender,e))
            Response.Redirect("wfPartner.aspx");
        }

        protected void bHitelek_Click(object sender, EventArgs e)
        {
            if (bSave_Click2(sender,e))
            Response.Redirect("wfHitelek.aspx");
        }

        protected void bMegj_Click(object sender, EventArgs e)
        {
            if (bSave_Click2(sender,e))
            Response.Redirect("wfMegjegyzes.aspx");
        }

        protected void bNyugdijak_Click(object sender, EventArgs e)
        {
            if (bSave_Click2(sender,e))
            Response.Redirect("wfNyugdij.aspx");
        }

        protected void bBefektetesek_Click(object sender, EventArgs e)
        {
            if (bSave_Click2(sender,e))
            Response.Redirect("wfBefektetesek.aspx");
        }

        protected void bEletBizt_Click(object sender, EventArgs e)
        {
            if (bSave_Click2(sender,e))
            Response.Redirect("wfBiztElet.aspx");
        }

        protected void bVagyonBizt_Click(object sender, EventArgs e)
        {
            if (bSave_Click2(sender,e))
            Response.Redirect("wfBiztVagyon.aspx");
        }

        protected void gvBIZTOSITASOK_SelectedIndexChanged(object sender, EventArgs e)
        {
            string pTipus = "";
            pTipus = dsBIZTOSITASOK.Tables["BIZTOSITASOK"].Rows[gvBIZTOSITASOK.SelectedIndex]["BZT_TIPUS"].ToString();
            //lépegetés a gridben
            tbBZT_ID.Text = dsBIZTOSITASOK.Tables["BIZTOSITASOK"].Rows[gvBIZTOSITASOK.SelectedIndex]["BZT_ID"].ToString();
            tbBZT_PRT_ID.Text = dsBIZTOSITASOK.Tables["BIZTOSITASOK"].Rows[gvBIZTOSITASOK.SelectedIndex]["BZT_PRT_ID"].ToString();
            ddlBZT_TIPUS.SelectedValue = pTipus;
            ddlBZT_TIPUS_SelectedIndexChanged(ddlBZT_TIPUS, null);
            if (pTipus == "BEF")
            {
                ddlBZT_VAGYC_INT_ID.SelectedValue = dsBIZTOSITASOK.Tables["BIZTOSITASOK"].Rows[gvBIZTOSITASOK.SelectedIndex]["BZT_VAGYS_LAKAS"].ToString();
                ddlBZT_VAGYC_FELELOSSEG.SelectedValue = dsBIZTOSITASOK.Tables["BIZTOSITASOK"].Rows[gvBIZTOSITASOK.SelectedIndex]["BZT_VAGYS_LAKAS_INT_ID"].ToString();
                ddlBZT_VAGYC_DOLGOZO.SelectedValue = dsBIZTOSITASOK.Tables["BIZTOSITASOK"].Rows[gvBIZTOSITASOK.SelectedIndex]["BZT_VAGYS_AUTO"].ToString();
                ddlBZT_VAGYC_FLOTTA.SelectedValue = dsBIZTOSITASOK.Tables["BIZTOSITASOK"].Rows[gvBIZTOSITASOK.SelectedIndex]["BZT_VAGYS_AUTO_INT_ID"].ToString();                
            }
            if (pTipus == "VAGYC")
            {
                ddlBZT_VAGYC_INT_ID.SelectedValue = dsBIZTOSITASOK.Tables["BIZTOSITASOK"].Rows[gvBIZTOSITASOK.SelectedIndex]["BZT_VAGYC_INT_ID"].ToString();
                tbBZT_VAGYC_TARGYA.Text = dsBIZTOSITASOK.Tables["BIZTOSITASOK"].Rows[gvBIZTOSITASOK.SelectedIndex]["BZT_VAGYC_TARGYA"].ToString();
                ddlBZT_VAGYC_FELELOSSEG.SelectedValue = dsBIZTOSITASOK.Tables["BIZTOSITASOK"].Rows[gvBIZTOSITASOK.SelectedIndex]["BZT_VAGYC_FELELOSSEG"].ToString();
                ddlBZT_VAGYC_DOLGOZO.SelectedValue = dsBIZTOSITASOK.Tables["BIZTOSITASOK"].Rows[gvBIZTOSITASOK.SelectedIndex]["BZT_VAGYC_DOLGOZO"].ToString();
                tbBZT_VAGYC_DOLGOZO_NEV.Text = dsBIZTOSITASOK.Tables["BIZTOSITASOK"].Rows[gvBIZTOSITASOK.SelectedIndex]["BZT_VAGYC_DOLGOZO_NEV"].ToString();
                tbBZT_VAGYC_DOLGOZO_OSSZEG.Text = Convert.ToDouble(dsBIZTOSITASOK.Tables["BIZTOSITASOK"].Rows[gvBIZTOSITASOK.SelectedIndex]["BZT_VAGYC_DOLGOZO_OSSZEG"].ToString()).ToString("F2");
                ddlBZT_VAGYC_FLOTTA.SelectedValue = dsBIZTOSITASOK.Tables["BIZTOSITASOK"].Rows[gvBIZTOSITASOK.SelectedIndex]["BZT_VAGYC_FLOTTA"].ToString();
                tbBZT_VAGYC_AUTOK.Text = dsBIZTOSITASOK.Tables["BIZTOSITASOK"].Rows[gvBIZTOSITASOK.SelectedIndex]["BZT_VAGYC_AUTOK"].ToString();
            }
        }

        protected void bUj_Click(object sender, EventArgs e)
        {
            dsBIZTOSITASOK.Tables["BIZTOSITASOK"].Rows.Add();

            gvBIZTOSITASOK.DataSource = dsBIZTOSITASOK;
            gvBIZTOSITASOK.DataBind();

            gvBIZTOSITASOK.SelectedIndex = dsBIZTOSITASOK.Tables["BIZTOSITASOK"].Rows.Count - 1;

            tbBZT_ID.Text = "-1";
            tbBZT_PRT_ID.Text = _PRT_ID.ToString();
            ddlBZT_TIPUS.SelectedIndex = 0;
            ddlBZT_TIPUS_SelectedIndexChanged(ddlBZT_TIPUS, null);

            ddlBZT_VAGYC_INT_ID.SelectedIndex = 0;
            tbBZT_VAGYC_TARGYA.Text = "";
            ddlBZT_VAGYC_FELELOSSEG.SelectedIndex = 0;
            ddlBZT_VAGYC_DOLGOZO.SelectedIndex = 0;
            tbBZT_VAGYC_DOLGOZO_NEV.Text = "";
            tbBZT_VAGYC_DOLGOZO_OSSZEG.Text = "0";
            ddlBZT_VAGYC_FLOTTA.SelectedIndex = 0;
            tbBZT_VAGYC_AUTOK.Text = "";
        }

        protected void bSave_Click(object sender, EventArgs e)
        {
             bool b = bSave_Click2(sender, e);
        }
        protected bool bSave_Click2(object sender, EventArgs e)
        {
            bool KellMent = true;
            int iBZT_ID = -1;
            int iBZT_PRT_ID = -1;
            string iBZT_TIPUS = "";
            int iBZT_BEF_INT_ID = -1;
            string iBZT_BEF_NEV = "";
            DateTime iBZT_BEF_TOL = DateTime.Now;
            DateTime iBZT_BEF_IG = DateTime.Now;
            double iBZT_BEF_OSSZEG = -1;
            string iBZT_BEF_ALAPOK = "";
            double iBZT_BEF_ARANY = -1;
            double iBZT_BEF_HALAL = -1;
            int iBZT_KOC_INT_ID = -1;
            string iBZT_KOC_NEV = "";
            DateTime iBZT_KOC_TOL = DateTime.Now;
            DateTime iBZT_KOC_IG = DateTime.Now;
            double iBZT_KOC_OSSZEG = -1;
            double iBZT_KOC_HAVIDIJ = -1;
            string iBZT_KOC_SZOVEG = "";
            string iBZT_VAGYS_LAKAS = "";
            int iBZT_VAGYS_LAKAS_INT_ID = -1;
            string iBZT_VAGYS_AUTO = "";
            int iBZT_VAGYS_AUTO_INT_ID = -1;
            int iBZT_VAGYC_INT_ID = -1;
            string iBZT_VAGYC_TARGYA = "";
            string iBZT_VAGYC_FELELOSSEG = "";
            string iBZT_VAGYC_DOLGOZO = "";
            string iBZT_VAGYC_DOLGOZO_NEV = "";
            double iBZT_VAGYC_DOLGOZO_OSSZEG = -1;
            string iBZT_VAGYC_FLOTTA = "";
            string iBZT_VAGYC_AUTOK = "";
            DateTime iBZT_CREATED = DateTime.Now;
            int iBZT_CREATED_BY = -1;
            DateTime iBZT_MODIFIED = DateTime.Now;
            int iBZT_MODIFIED_BY = -1;
            string oErr = "";

            try{
            iBZT_ID = Convert.ToInt32(tbBZT_ID.Text);
                        }
            catch (Exception xx)
            {
                return true;
            }
            iBZT_PRT_ID = Convert.ToInt32(tbBZT_PRT_ID.Text);
            iBZT_TIPUS = ddlBZT_TIPUS.SelectedValue;
            if (ddlBZT_TIPUS.SelectedValue == "VAGYS")
            {
                iBZT_VAGYS_LAKAS = ddlBZT_VAGYC_INT_ID.SelectedValue;
                iBZT_VAGYS_LAKAS_INT_ID = Convert.ToInt32( ddlBZT_VAGYC_FELELOSSEG.SelectedValue );
                iBZT_VAGYS_AUTO = ddlBZT_VAGYC_DOLGOZO.SelectedValue;
                iBZT_VAGYS_AUTO_INT_ID = Convert.ToInt32( ddlBZT_VAGYC_FLOTTA.SelectedValue);
            }
            if (ddlBZT_TIPUS.SelectedValue == "VAGYC")
            {
                iBZT_VAGYC_INT_ID = Convert.ToInt32(ddlBZT_VAGYC_INT_ID.SelectedValue);
                iBZT_VAGYC_TARGYA = tbBZT_VAGYC_TARGYA.Text;
                iBZT_VAGYC_FELELOSSEG = ddlBZT_VAGYC_FELELOSSEG.SelectedValue;
                iBZT_VAGYC_DOLGOZO = ddlBZT_VAGYC_DOLGOZO.SelectedValue;
                iBZT_VAGYC_DOLGOZO_NEV = tbBZT_VAGYC_DOLGOZO_NEV.Text;
                try
                {
                    iBZT_VAGYC_DOLGOZO_OSSZEG = Convert.ToDouble(tbBZT_VAGYC_DOLGOZO_OSSZEG.Text);
                }
                catch
                {
                    lMessage.Text = "Összeg nem megfelő formátumú!";
                    tbBZT_VAGYC_DOLGOZO_OSSZEG.Focus();
                    KellMent = false;
                }
                iBZT_VAGYC_FLOTTA = ddlBZT_VAGYC_FLOTTA.SelectedValue;
                iBZT_VAGYC_AUTOK = tbBZT_VAGYC_AUTOK.Text;
            }
            iBZT_CREATED = DateTime.Now;
            iBZT_CREATED_BY = (int)Session["USR_ID"];
            iBZT_MODIFIED = DateTime.Now;
            iBZT_MODIFIED_BY = (int)Session["USR_ID"];

            if (KellMent)
            {
                if (!(_clBIZTOSITASOK.SaveBIZTOSITASOK(iBZT_ID, iBZT_PRT_ID, iBZT_TIPUS,
                                            iBZT_BEF_INT_ID, iBZT_BEF_NEV, iBZT_BEF_TOL, iBZT_BEF_IG, iBZT_BEF_OSSZEG, iBZT_BEF_ALAPOK, iBZT_BEF_ARANY, iBZT_BEF_HALAL,
                                            iBZT_KOC_INT_ID, iBZT_KOC_NEV, iBZT_KOC_TOL, iBZT_KOC_IG, iBZT_KOC_OSSZEG, iBZT_KOC_HAVIDIJ, iBZT_KOC_SZOVEG,
                                            iBZT_VAGYS_LAKAS, iBZT_VAGYS_LAKAS_INT_ID, iBZT_VAGYS_AUTO, iBZT_VAGYS_AUTO_INT_ID,
                                            iBZT_VAGYC_INT_ID, iBZT_VAGYC_TARGYA, iBZT_VAGYC_FELELOSSEG, iBZT_VAGYC_DOLGOZO, iBZT_VAGYC_DOLGOZO_NEV, iBZT_VAGYC_DOLGOZO_OSSZEG, iBZT_VAGYC_FLOTTA, iBZT_VAGYC_AUTOK,
                                            iBZT_CREATED, iBZT_CREATED_BY, iBZT_MODIFIED, iBZT_MODIFIED_BY,
                                          ref oErr)))
                {
                    lMessage.Text = oErr;
                    return false;
                }
                else
                {
                    int si = gvBIZTOSITASOK.SelectedIndex;

                    DataInit();

                    gvBIZTOSITASOK.SelectedIndex = si;

                    gvBIZTOSITASOK_SelectedIndexChanged(sender, e);
                    lMessage.Text = "";
                    return true;
                }
            }
            return KellMent;
        }

        protected void ddlBZT_TIPUS_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (ddlBZT_TIPUS.SelectedValue == "VAGYS")
            {
                lBZT_VAGYC_INT_ID.Text = "Lakás biztosítás:";
                lBZT_VAGYC_TARGYA.Visible = false ;
                tbBZT_VAGYC_TARGYA.Visible = false;
                lBZT_VAGYC_FELELOSSEG.Text = "Biztosító:";
                lBZT_VAGYC_DOLGOZO.Text = "Autó biztosítás:";

                lBZT_VAGYC_DOLGOZO_NEV.Visible = false;
                tbBZT_VAGYC_DOLGOZO_NEV.Visible = false;
                lBZT_VAGYC_DOLGOZO_OSSZEG.Visible = false;
                tbBZT_VAGYC_DOLGOZO_OSSZEG.Visible = false;
                lBZT_VAGYC_FLOTTA.Text = "Biztosító:";
                lBZT_VAGYC_AUTOK.Visible = false;
                tbBZT_VAGYC_AUTOK.Visible = false;
            }

            if (ddlBZT_TIPUS.SelectedValue == "VAGYC")
            {
                lBZT_VAGYC_INT_ID.Text = "Biztosító";
                lBZT_VAGYC_TARGYA.Text = "Biztosítás tárgya";
                lBZT_VAGYC_TARGYA.Visible = true;
                tbBZT_VAGYC_TARGYA.Visible = true ;
                lBZT_VAGYC_FELELOSSEG.Text = "Felelősségbiztosítással rendelkezik-e?";
                lBZT_VAGYC_DOLGOZO.Text = "Fizet-e kockázati életbiztosítást a munkavállalók után?";
                lBZT_VAGYC_DOLGOZO_NEV.Text = "Biztosítottak";
                lBZT_VAGYC_DOLGOZO_NEV.Visible = true;
                tbBZT_VAGYC_DOLGOZO_NEV.Visible = true;
                lBZT_VAGYC_DOLGOZO_OSSZEG.Text = "Összege/díja";
                lBZT_VAGYC_DOLGOZO_OSSZEG.Visible = true ;
                tbBZT_VAGYC_DOLGOZO_OSSZEG.Visible = true ;
                lBZT_VAGYC_FLOTTA.Text = "Van-e gépjármű flottája?";
                lBZT_VAGYC_AUTOK.Text = "Autótípusok:";
                lBZT_VAGYC_AUTOK.Visible = true;
                tbBZT_VAGYC_AUTOK.Visible = true;
            }

            FillCombos();
        }

        protected void gvBIZTOSITASOK_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                e.Row.ID = e.Row.Cells[0].Text;
                e.Row.Attributes["onclick"] = ClientScript.GetPostBackClientHyperlink(this.gvBIZTOSITASOK, "Select$" + e.Row.RowIndex);
                //e.Row.Attributes.Add("onclick", "GridView_selectRow(this,'" + e.Row.Cells[0].Text + "')");
                e.Row.Attributes.Add("onmouseover", "GridView_mouseHover(this)");
            }
        }

        protected void bVisszaFooldalra_Click(object sender, EventArgs e)
        {
            Response.Redirect("wfDefault.aspx");
        }
    }
}
